Extended Isomap using fisher linear discriminant and kernel fisher linear discriminant

ABSTRACT

A method for representing images for pattern classification extends the conventional Isomap method with Fisher Linear Discriminant (FLD) or Kernel Fisher Linear Discriminant (KFLD) for classification. The extended Isomap method estimates the geodesic distance of data points corresponding to images for pattern classification, and uses pairwise geodesic distances as feature vectors. The method applies FLD to the feature vectors to find an optimal projection direction to maximize the distances between cluster centers of the feature vectors. The method may apply KFLD to the feature vectors instead of FLD.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Patent Application No. 60/399,507 entitled “Extended Isomap for Pattern Classification,” filed on Jul. 29, 2002, the subject matter of which is incorporated by reference herein in its entirety. This application is also related to co-pending U.S. patent application Ser. No. 10/201,429 entitled “Face Recognition Using Kernel Fisherfaces,” filed on Jul. 22, 2002.

TECHNICAL FIELD

[0002] The present invention relates generally to pattern classification and, more specifically, to representing images for pattern classification by extended Isomap using Linear Discriminant or Kernel Fisher Linear Discriminant.

BACKGROUND OF THE INVENTION

[0003] Pattern classification (also know as pattern recognition) has received increased attention lately, since it can be used in various applications. For example, face recognition technology, which involves classification of face images, can be used in applications such as surveillance, security, advertising, and the like.

[0004] Pattern classification involves classifying data points in an input space where the data points correspond to the images or patterns to be classified. The data points typically lie on a complex manifold in the input space, and pattern classification is carried out by determining how close the data points are to reference data points corresponding to reference images. For example, in face recognition, a face image is typically a two-dimensional N by N array of intensity values and each face image can be represented in the input space as a vector having a dimension N² in the input space having a dimension N². A set of face images corresponds to a set of data points (vectors) in the N² dimensional input space, and the data points typically constitute a complex manifold in the N² dimensional input space. Face recognition involves determining how close the data points corresponding to the face images are to data points corresponding to reference face images.

[0005] In order to determine how close the data points are to each other and to the reference data points in the input space for pattern classification, the nature of the manifold should be taken into consideration. That is, the geodesic distance (distance metrics along the surface of the manifold) between data points in the input space should be used to determine how close the data points are, because the geodesic distance reflects the intrinsic geometry of the underlying manifold.

[0006]FIG. 1A is a diagram illustrating an example of a complex manifold 100 on which data points of different classes are displayed in distinct shaded patches, and FIG. 1B is a diagram illustrating data points sampled from these different classes shown in the manifold 100 of FIG. 1A For a pair of points on the manifold 100 in FIG. 1A, their Euclidean distance may not accurately reflect their intrinsic similarity and consequently is not suitable for use in pattern classification. For example, referring to FIG. 1B, the Euclidean distance between two data points (e.g., x₁ and x₂) may be deceptively small in the three-dimensional input space, although the geodesic distance between the two data points (x₁ and x₂) on the intrinsic two-dimensional manifold 100 is large. Therefore, the geodesic distance should be used to determine how close the data points (x₁ and x₂) are on the manifold, since the geodesic distance reflects the intrinsic geometry of the underlying manifold 100.

[0007] Recently, the Isomap method (also known as “isometric feature mapping”) and the Locally Linear Embedding (LLE) method have been proposed for learning the intrinsic geometry of complex manifolds using local geometric metrics within a single global coordinate system. The conventional Isomap method first constructs a neighborhood graph that connects each data point on the manifold to all its k-nearest neighbors or to all the data points within some fixed radius E in the input space. For neighboring points, the input space Euclidean distance usually provides a good approximation of their geodesic distance. For each pair of data points, the shortest path connecting them in the neighborhood graph is computed and is used as an estimate of the true geodesic distance. These estimates are good approximations of the true geodesic distances if there are a sufficient number of data points on the manifold in the input space like FIG. 1B. A conventional multi-dimensional scaling method is then applied to construct a low dimensional subspace that best preserves the manifold's estimated intrinsic geometry.

[0008] The Locally Linear Embedding (LLE) method captures local geometric properties of the complex embedding manifolds by a set of linear coefficients in the high dimensional input space that best approximates each data point from its neighbors in the input space. LLE then finds a set of low dimensional points where each point can be linearly approximated by its neighbors with the same set of coefficients that was computed from the high dimensional data points in the input space while minimizing reconstruction cost.

[0009] Although the conventional Isomap method and the LLE method have demonstrated acceptable results in finding the embedding manifolds that best describe the data points with minimum reconstruction error as compared to, they fail to represent the images in an optimum way as to facilitate classification of those images. Furthermore, the conventional Isomap method and the LLE method assume that the embedding manifold is well sampled, which may not be the case in some classification problems such as face recognition since there are typically only a few samples available for each person.

[0010] Therefore, there is a need for a method of optimally representing patterns such that the classification of such patterns are facilitated and the intrinsic geometry of the underlying manifold of the data points corresponding to the patterns are preserved.

SUMMARY OF INVENTION

[0011] The present invention provides a method for representing images for pattern classification by extending the conventional Isomap method with Fisher Linear Discriminant (FLD) or Kernel Fisher Linear Discriminant (KFLD) for classification. The method of the present invention estimates the geodesic distance of data points corresponding to images for pattern classification, similar to conventional Isomap methods, and then uses pairwise geodesic distances as feature vectors. According to one embodiment of the present invention, the method applies FLD to the feature vectors to find an optimal projection direction to maximize the distances between cluster centers of the feature vectors.

[0012] In another embodiment of the present invention, the method applies KFLD to the feature vectors rather than FLD to find an optimal projection direction to maximize the distances between cluster centers of the feature vectors.

[0013] The present invention also provides a system for representing images for pattern classification by extending the conventional Isomap method with Fisher Linear Discriminant (FLD) or Kernel Fisher Linear Discriminant (KFLD) for classification. The system of the present invention includes a neighboring graph generation module for generating a neighboring graph for data points corresponding to the images, a geodesic distance estimation module for estimating the geodesic distance of data points, and a FLD projection module for generating feature vectors based on the pairwise geodesic distances and applying FLD to the feature vectors to find an optimal projection direction to maximize the distances between cluster centers of the feature vectors, according to one embodiment of the present invention.

[0014] In another embodiment of the present invention, the system includes a KFLD module rather than a FLD module for generating feature vectors based upon the pairwise geodesic distances and applying FLD to the feature vectors to find an optimal projection direction to maximize the distances between cluster centers of the feature vectors, according to another embodiment of the present invention.

[0015] The present invention may be embodied in various forms, including computer products, methods, and systems, special or general purpose computing devices or apparatuses, online services or systems, users interfaces, etc.

BRIEF DESCRIPTION OF THE DRAWINGS

[0016] The teachings of the present invention can be readily understood by considering the following detailed description in conjunction with the accompanying drawings. Like reference numerals are used for like elements in the accompanying drawings.

[0017]FIG. 1A is a diagram illustrating an example of a complex manifold on which data points of different classes are displayed in distinct shaded patches.

[0018]FIG. 1B is a diagram illustrating data points sampled from the different classes shown in the manifold of FIG. 1A.

[0019]FIG. 2 is a flowchart illustrating a method of representing images for pattern classification by extended Isomap according to a first embodiment of the present invention.

[0020]FIG. 3 is a flowchart illustrating a method of representing images for pattern classification by extended Isomap according to a second embodiment of the present invention.

[0021]FIG. 4 is a diagram illustrating a system for representing images for pattern classification by extended Isomap according to a first embodiment of the present invention.

[0022]FIG. 5 is a diagram illustrating a system for representing images for pattern classification by extended Isomap according to a second embodiment of the present invention.

[0023]FIG. 6 is a graph illustrating the results of testing the method of representing images for pattern classification by extended Isomap according to the first embodiment of the present invention on a first set of test face images.

[0024]FIG. 7 is a graph illustrating the results of testing the method of representing images for pattern classification by extended Isomap according to the first embodiment of the present invention on a second set of test face images.

[0025]FIG. 8A is a graph illustrating sample images projected by the conventional Isomap method.

[0026]FIG. 8B is a graph illustrating sample images projected by the extended Isomap method according to the first embodiment of the present invention.

[0027]FIG. 9 is a graph illustrating the results of testing the method of representing images for pattern classification by extended Isomap according to the first embodiment of the present invention on a third set of test face images.

DETAILED DESCRIPTION OF EMBODIMENTS

[0028]FIG. 2 is a flowchart illustrating a method of representing images for pattern classification by extended Isomap according to a first embodiment of the present invention. The extended Isomap method of FIG. 2 employs Fisher Linear Discriminant (FLD) combined with the conventional Isomap method to represent images for pattern classification.

[0029] Referring to FIG. 2, a set of sample images for classification is obtained 202 in the input space. The sample images are represented in the form of vectors. Assuming that there is a set of m sample images {x₁, . . . , x_(m)} and that each sample image belongs to one of the c classes {Z_(l), . . . , Z_(c)}, a neighboring graph of the sample images is generated 204. To this end, the neighbors of each sample x_(i) are determined on a low dimensional manifold M on which the data points corresponding to the sample images lie, based on distance metrics d_(X)(x_(i), x_(j)) in the input space X Such distance metrics can be the Euclidean distance that is often used in face recognition. Such distance metrics can also be the tangent distance that has been shown to be effective in hand digit recognition. The distance between two data points in the input space provides a good approximation of the geodesic distance when the data points are neighboring points. Thus, the input space distance metrics can be utilized to determine whether or not two data points are neighbors.

[0030] In one embodiment, the neighbors of each sample x_(i) are determined by the k-Isomap method that uses a k-nearest neighbor algorithm to determine neighbors. In another embodiment, the neighbors of each sample x_(i) are determined by the ε-Isomap method that includes all data points within a predetermined radius e as neighbors.

[0031] The neighborhood relationships between the data points corresponding to the sample images are represented in a weighted graph G in which:

d _(G)(x _(i) ,x _(j))=d _(x)(x _(i) ,x _(j)), if x_(i) and x_(j) are neighbors, and

d _(G)(x _(i) ,x _(j))=∞, if otherwise  (1)

[0032] Next, the geodesic distances d_(M) (x_(i, x) _(j)) between any pair of data points on the manifold M are estimated 206. For a pair of data points that are far away, their geodesic distance can be approximated by a sequence of short hops between neighboring data points. In other words, the geodesic distance d_(M) (x_(i, x) _(j)) is approximated by the shortest path between the data points x_(i) and x_(j) on the weighted graph G, which is computed by the Floyd-Warshall algorithm:

d _(M) (x _(i) , x _(j))=min{d _(G)(x _(i) , x _(j)), d _(G)(x _(i), x_(k))+d _(G)(x _(k) , x _(j))}, k≠i, j  (2)

[0033] The shortest paths between any two data points are represented in a matrix D where D_(ij)=d_(M) (x_(i), x_(j))

[0034] Then, each of the data points corresponding to the sample images are represented 208 by a feature vector of its geodesic distance to any other points, and Fisher Linear Discriminant is applied 208 to the feature vectors to find an optimal projection direction for classification. Fisher Linear Discriminant determines a subspace in the low dimensional space where the class centers are separated as far as possible so that classification of the sample images are facilitated. The feature vector corresponding to the data point x_(i) is an m−1 dimensional vector f_(i)=[D_(ij)] where j=1, . . . , m and j≠i.

[0035] The between-class and within-class scatter matrices in Fisher Linear Discriminant are computed by: $\begin{matrix} {S_{B} = {\sum\limits_{i = 1}^{c}{{N_{i}\left( {\mu_{i} - \mu} \right)}\left( {\mu_{i} - \mu} \right)^{T}}}} & (4) \\ {S_{W} = {\sum\limits_{i = 1}^{c}{\sum\limits_{f_{k} \in z_{i}}{\left( {f_{k} - \mu_{i}} \right)\left( {f_{k} - \mu_{i}} \right)^{T}}}}} & (5) \end{matrix}$

[0036] where μ is the mean of all sample feature vectors f_(k), μ_(i) is the mean of class Z_(i), S_(wi) is the covariance of class Z_(i), and N_(i) is the number of samples in class Z_(i). The optimal projection W_(FLD) is chosen as the matrix with orthonornal columns which maximizes the ratio of the determinant of the between-class scatter matrix of the projected samples to the determinant of the within-class scatter matrix of the projected samples: $\begin{matrix} {W_{FLD} = {{\arg \quad {\max\limits_{w}\frac{{W^{T}S_{B}W}}{{W^{T}S_{W}W}}}} = \left\lbrack {w_{1},w_{2},\ldots \quad,w_{m}} \right\rbrack}} & (6) \end{matrix}$

[0037] where {w_(i)|i=1, 2, . . . , m} is the set of generalized eigenvectors of S_(B) and S_(w), corresponding to the m largest generalized eigenvalues {λ_(i)|i=1, 2, . . . , m}. The rank of SB is c−1 or less because it is the sum of c matrices of rank one or less. Thus, there are at most c−1 nonzero eigenvalues. Each data point x_(i) corresponding to the sample image is represented by a low dimensional feature vector y_(i)=W_(FLD) f_(i).

[0038] The computational complexity and memory requirements of the conventional Isomap method and the extended Isomap method according to the present invention are dominated by the calculation of the shortest paths between the data points. The Floyd-Warshall algorithm requires 0(m³) operations and stores 0(m²) elements of estimated geodesic distances for straightforward implementations. On the other hand, the Multi-Dimensional Scaling (MDS) procedure used in the conventional Isomap method can be time-consuming as a result of its iterative operations to detect meaningful underlying dimensions that explain the observed similarities or dissimilarities (distances) between data points. The neighboring graph d_(G) (x_(i),x_(j)) provides better estimates of the intrinsic geodesic distance d_(M) (x_(i), x_(j)) as the number of data points increases. In practice, however, there may not be a sufficient number of samples, and so the geodesic distances d_(G)(x_(i), x_(j)) may not be good approximations of the intrinsic geodesic distances. Thus, the conventional Isomap may not be able to find intrinsic dimensionality from the data points and may not be suitable for pattern classification purposes.

[0039] In contrast, the extended Isomap method utilizes the distances between the scatter centers (i.e., poor approximations are averaged out) and thus may perform well for pattern classification. While the conventional Isomap method uses MDS to find dimensions of the embedding manifolds, in the extended Isomap method of the present invention the dimensionality of the subspace is determined by the number of class (i.e., c−1), which makes the computations for pattern classification much simpler than those required by conventional Isomap.

[0040] To deal with the singularity problem of within-scatter matrix S_(w) that is often encountered in pattern classification, a multiple of the identity matrix may be added to the within-scatter matrix, i.e., S_(w)+εI(where ε is a small number), according to one embodiment of the present invention. This also makes the eigenvalue problem numerically more stable.

[0041]FIG. 3 is a flowchart illustrating a method of representing images for pattern classification by extended Isomap according to a second embodiment of the present invention. For the data sets that are not linearly separable, the application of FLD in step 208 may be replaced by Kernel Fisher Linear Discriminant (KFLD) method 308. This is because KFLD conceptually projects data from the input space to a higher dimensional space in order to extract more representative features of the images prior to computing the optimal discriminant function to separate the data points. The method of FIG. 3 is identical to the method described in FIG. 2 except that the feature vectors are projected using KFLD in step 308 rather than FLD.

[0042] In KFLD analysis, each feature vector f(where f_(i)=[D_(ij)] where j=1, . . . , m and j≠I) obtained from the extend Isomap method is projected from the input space, R^(n), to Φ(f) in a high dimensional feature space R^(F), by a nonlinear mapping function (projection function):

Φ:R ^(n) →R ^(F) ,F>n  (7)

[0043] Each feature vector f_(i) will be denoted as feature vector f hereinafter for the convenience of describing the equations involved with KFLD. The dimension F of the high dimensional feature space can be arbitrarily large.

[0044] Selection of a specific projection function is dependent upon the nature of the data and application and is often empirically determined. Numerous forms of projection functions Φ(x) can be used for the present invention. However, there are only a limited number of projection functions that are compatible with efficient and systematic computation. One approach for selecting a particular projection function Φ(x) is to select a projection function of which the dot product can be computed efficiently using a kernel function rather than by actually performing the dot product operation of the projection functions, since dot product operations of the projection functions are used frequently in the computation carried out for projecting the feature vectors from the high dimensional feature space to the low dimensional face image space and computationally intense. Thus, such approach finds kernel functions k(x,y) that satisfy the following relation:

k(x, y)=Φ(x)·Φ(y)  (8)

[0045] Typically, computations using the kernel function k(x,y) can be carried out much more efficiently compared to computations using the dot product Φ(x)·Φ(y), because the computation using the kernel function k(x,y) depends on the n-dimensional input space (usually low) whereas the computation of Φ(x)·Φ(y) depends on the dimensionality of Φ(x) and Φ(y), which is usually very high and can be infinite. The polynomial kernel (k(x, y)=(x·y)^(d)) and the Gaussian kernel (k(x, y)=e^(−∥x−y∥) _(²) ^(/2σ) _(²) , where σ is the standard deviation of the Gaussian distribution from which x and y come from), are the most widely used kernel functions.

[0046] Note that the exact form of the projection functions (Φ(x),Φ(y)) is completely dictated by the selected kernel function k(x,y). In fact, the exact closed forms of the projection functions need not be known if only the dot products of the projected samples, (Φ(x)·Φ(y) are used in the computation for projecting the face images from the high dimensional feature space to the lower dimensional face image space, since the kernel function k(x,y) can be used instead to perform such projection in a computationally efficient way. Thus, one advantage of using kernel functions is that an n-dimensional face image can be projected to an f-dimensional feature space (f is much larger than n), which provides a richer feature representation, without knowing the exact closed form of the projection function. When the d-degree polynomial kernel function is used, the dimensionality f of the high dimensional feature space is $\begin{pmatrix} {d + n - 1} \\ d \end{pmatrix}.$

[0047] Denoting the within-class and between-class scatter matrices in the high dimensional space R^(F) by S_(W)^(Φ)  and  S_(B)^(Φ),

[0048] respectively, and applying FLD in the high-dimensional kernel space R^(F), it is necessary to find eigenvalues λ and eigenvectors w^(Φ)of the eigenvalue problem: $\begin{matrix} {{S_{B}^{\Phi}w^{\Phi}} = {\lambda \quad S_{W}^{\Phi}{w^{\Phi}.}}} & (9) \end{matrix}$

[0049] In the high dimensional feature space R^(F), the following equations follow: $\begin{matrix} {S_{W}^{\Phi} = {\sum\limits_{i = 1}^{c}S_{i}^{\Phi}}} & (10) \\ {S_{i}^{\Phi} = {\sum\limits_{x \in X_{i}}{\left( {{\Phi (f)} - \mu_{i}^{\Phi}} \right)\left( {{\Phi (f)} - \mu_{i}^{\Phi}} \right)^{T}}}} & (11) \\ {\mu_{i}^{\Phi} = {\frac{1}{n_{i}}{\sum\limits_{f \in X_{i}}{\Phi (f)}}}} & (12) \\ {S_{B}^{\Phi} = {\sum\limits_{i = 1}^{c}{{n_{i}\left( {\mu_{i}^{\Phi} - \mu^{\Phi}} \right)}\left( {\mu_{i}^{\Phi} - \mu^{\Phi}} \right)^{T}}}} & (13) \end{matrix}$

[0050] where μ^(Φ) is the total mean of vector ${\Phi (f)},{i.e.},{\mu^{\Phi} = {\frac{1}{n}{\sum\limits_{x}{{\Phi (f)}.}}}}$

[0051] It follows that the optimal projection matrix w_(OPT)^(Φ)

[0052] in the high dimensional space R^(F) is: $\begin{matrix} {w_{OPT}^{\Phi} = {{\arg \quad {\max_{w^{\Phi}}\frac{{\left( w^{\Phi} \right)^{T}S_{B}^{\Phi}w^{\Phi}}}{{\left( w^{\Phi} \right)^{T}S_{W}^{\Phi}w^{\Phi}}}}} = \left\lbrack {w_{1}^{\Phi},\ldots \quad,w_{m}^{\Phi}} \right\rbrack}} & (14) \end{matrix}$

[0053] where {w_(i)^(Φ)|i = 1, 2, …  , m}

[0054] is the set of generalized eigenvectors corresponding to the m largest generalized eigenvalues {λ|i=1,2, . . . , m}. “arg max_(w) _(^(Φ)) ” in equation (14) finds w^(Φ) that maximizes the ratio that follows arg max.

[0055] To avoid the singularity problem in computing w^(Φ), a small identity matrix I may be added to S_(w) ^(Φ) in order to make it numerically stable, according to one embodiment of the present invention. In other words, S_(w) ^(Φ)=S_(w) ^(Φ)+ε I, where I is an identity matrix whose dimensionality is the same as S_(w) ^(Φ)and ε is a small real number, for example 0.001 according to one embodiment of the present invention. By adding a small real number to the diagonals of the within-class scatter matrix, none of the elements on the diagonal of the within-class scatter matrix can be zero, thus eliminating singularity problems.

[0056] Consider a c-class problem (i.e., each sample belongs to one of the c classes) and let the r-th sample of class t and the s-th sample of class u be f_(μ) and f_(μs), respectively (where class t has l_(t) samples and class u has l_(u) samples). The kernel function can be defined as:

(k _(rs))_(tu) =k(f _(μ) ,f _(μs))=Φ(f _(μ))·Φ(f _(μs))  (15)

[0057] Let K be a m×m matrix defined by the elements (K_(tu))_(u = 1, …, c)^(t = 1, …, c)

[0058] where K_(tu) is a matrix composed of dot products in the high dimensional feature space R^(F), i.e., $\begin{matrix} \begin{matrix} {{K = \left( K_{tu} \right)_{{u = 1},\ldots,c}^{{t = 1},\ldots,c}}\quad,} \\ {where} \end{matrix} & (16) \\ {K_{tu} = {\left( k_{rs} \right)_{{s = 1},\ldots,l_{u}}^{{r = 1},\ldots,l_{t}}\quad.}} & (17) \end{matrix}$

[0059] Here, K_(tu) is an l_(t)×l_(u) matrix, and K is an m×m symmetric matrix. Also, matrix Z is defined:

Z=(Z _(t))_(t=1, . . . , c)  (18)

[0060] where (Z_(t)) is an l_(t)×l_(t) matrix with terms all equal to $\frac{1}{l_{t}},$

[0061] i.e., Z is an m×m block diagonal matrix.

[0062] The between-class and within-class scatter matrices in the high dimensional feature space R^(F) in equation (13) and (10), respectively, become:

[0063] $\begin{matrix} {S_{B}^{\Phi} = {\sum\limits_{i = 1}^{c}\quad {l_{i}{\mu_{i}^{\Phi}\left( \mu_{i}^{\Phi} \right)}^{T}}}} & (19) \\ {S_{W}^{\Phi} = {\sum\limits_{i = 1}^{c}{\sum\limits_{j = 1}^{l_{i}}\quad {{\Phi \left( f_{ij} \right)}{\Phi \left( f_{ij} \right)}^{T}}}}} & (20) \end{matrix}$

[0064] where μ_(i) ^(Φ) is the mean of class i in R^(F), and l_(i) is the number of samples belonging to class i. From the theory of reproducing kernels, any solution w^(Φ)∈R^(F) must lie in the span of all training samples in R^(F), i.e., $\begin{matrix} {w^{\Phi} = {\sum\limits_{p = 1}^{c}\quad {\sum\limits_{q = 1}^{l_{p}}\quad {\alpha_{pq}{\Phi \left( f_{pq} \right)}}}}} & (21) \end{matrix}$

[0065] It follows that the solution for (21) is obtained by solving:

λKKα=KZKα  (22)

[0066] Consequently, equation (14) can be written as: $\begin{matrix} \begin{matrix} {w_{OPT}^{\Phi} = {\arg {\quad \quad}{\max_{w^{\Phi}}\frac{{\left( w^{\Phi} \right)^{T}S_{B}^{\Phi}w^{\Phi}}}{{\left( w^{\Phi} \right)^{T}S_{w}^{\Phi}w^{\Phi}}}}}} \\ {= {\arg {\quad \quad}{\max_{w^{\Phi}}\frac{{\alpha \quad {KZK}\quad \alpha}}{{\alpha \quad {KK}\quad \alpha}}}}} \\ {= \left\lbrack {w_{1}^{\Phi},\ldots \quad,w_{m}^{\Phi}} \right\rbrack} \end{matrix} & (23) \end{matrix}$

[0067] where “arg max_(w) _(^(Φ)) ” in equation (23) finds w^(Φ) that maximizes the ratio that follows arg max. The extracted eigenvector w^(Φ)=[w_(l) ^(Φ), . . . , w_(m) ^(Φ)] obtained in Equation (23) is called the Kernel Fisherface.

[0068] The vectors Φ(f) in the high dimensional feature space R^(F) can now be projected to a lower dimensional space spanned by using the Kernel Fisherface (eigenvector) w^(Φ). The lower dimensional space has a dimension lower than both the dimension of the input space and the high dimensional feature space. The projection of Φ(f) onto the eigenvectors w^(Φ) becomes the nonlinear Fisher Linear Discriminant (FLD) corresponding to Φ(f):

[0069] $\begin{matrix} {{w^{\Phi} \cdot {\Phi (f)}} = {{\sum\limits_{p = 1}^{c}\quad {\sum\limits_{q = 1}^{l_{p}}\quad {\alpha_{pq}\left( {{\Phi \left( f_{pq} \right)} \cdot {\Phi (f)}} \right)}}} = {\sum\limits_{p = 1}^{c}\quad {\sum\limits_{q = 1}^{l_{p}}\quad {\alpha_{pq}{k\left( {f_{pq},f} \right)}}}}}} & (24) \end{matrix}$

[0070] In this manner, it is possible to extract the Fisher Linear Discriminants using the kernel function without actually carrying out the burdensome computation that results from projecting the samples to a high dimensional feature space R^(F). The low dimensional feature vector y for each for each feature vector is w^(Φ)·Φ(f) obtained in equation (24).

[0071]FIG. 4 is a diagram illustrating a system 400 for representing images for pattern classification by extended Isomap according to a first embodiment of the present invention. The system 400 includes a neighboring graph generation module 402, a geodesic distance estimation module 404, and a FLD projection module 406. The neighboring graph generation module 402 receives sample images of classification and generates a neighboring graph of the data points corresponding to the sample images according to step 204 of FIG. 2. The geodesic distance estimation module 404 estimates the geodesic distance between data points on the neighboring graph according to step 206 of FIG. 2. The FLD projection module 406 represents each data point by a feature vector corresponding to its geodesic distance to other data points on the neighboring graph and applies FLD to the feature vectors according to step 208 of FIG. 2, to output feature vectors representing the sample images that are optimally projected for classification.

[0072]FIG. 5 is a diagram illustrating a system 500 for representing images for pattern classification by extended Isomap according to a second embodiment of the present invention. The system 500 includes a neighboring graph generation module 502, a geodesic distance estimation module 504, and a FLD projection module 506. The neighboring graph generation module 502 receives sample images of classification and generates a neighboring graph of the data points corresponding to the sample images according to step 304 of FIG. 3. The geodesic distance estimation module 504 estimates the geodesic distance between data points on the neighboring graph according to step 306 of FIG. 3. The FLD projection module 506 represents each data point by a feature vector corresponding to its geodesic distance to other data points on the neighboring graph and applies KFLD to the feature vectors according to step 308 of FIG. 3 to output feature vectors representing the sample images that are optimally projected for classification.

[0073] Two pattern classification problems, face recognition and handwritten digit recognition, were considered in order to test the performance of the extended Isomap method of the present invention in comparison with the conventional Isomap methods. These two problems have interesting characteristics and are approached differently. In the appearance-based methods for face recognition in frontal pose, each face image provides a rich description of one's identity and as a whole (i.e., holistic) is usually treated as a pattern without extracting features explicitly. Instead, subspace methods such as PCA (Principal Component Analysis) and FLD (Fisher Linear Discriminant) are applied to implicitly extract meaningful (e.g., PCA) or discriminant (e.g., FLD) features and then project patterns to a lower dimensional subspace for recognition. On the contrary, sophisticated feature extraction techniques are usually applied to handwritten digit images before any decision surface is induced for classification.

[0074] The extended Isomap of the present invention was tested against the conventional Isomap methods, LLE, Eigenface (PCA), and Fisherface (FLD) methods using a first set of test face images, a second set of test face images, and a third set of test handwritten digit images retrieved from publicly available databases. The first and second sets of test face images had several unique characteristics. While the images in the first set of test face images contained facial contours and vary in pose as well as scale, the face images in the second set of test face images had been cropped and aligned to include internal facial structures such as the eyebrow, eyes, nose, mouth and chin but do not contain facial contours. The face images in the first set of test face images were taken under well-controlled lighting conditions whereas the images in the second set of test face images were acquired under varying lighting conditions. For handwritten digit recognition problem, the extended Isomap method of the present invention was tested using the third set of test images of handwritten digits.

[0075]FIG. 6 is a graph illustrating the results of testing the method of representing images for pattern classification by extended Isomap according to the first embodiment of the present invention (using FLD with conventional Isomap) on the first set of test face images. The first set of test face images contained 400 images of 40 subjects. To reduce computational complexity, each face image was down-sampled to 23×28 pixels for experiments. Each face image was represented by a raster scan vector of the intensity values, and then the intensity values were normalized to be zero-mean unit-variance vectors.

[0076] The tests were performed using the “leave-one-out” strategy (i.e., m-fold cross-validation). To classify an image of a person, that image was removed from the training set of (m−1) images and the projection matrix was computed. All the m images in the training set were projected to a reduced space and recognition is performed based on a nearest neighbor classifier. The parameters, such as the number of principal components in the Eigenface (PCA) and the LLE methods, were empirically determined to achieve the lowest error rate by each method. For the Fisherface method (FLD) and the extended Isomap method of the present invention, all samples were projected onto a subspace spanned by the c−1 largest eigenvectors (where c is the number of classes).

[0077] Referring to FIG. 6, among all the face recognition methods, the extended Isomap method with the radius implementation (labeled “Ext Isomap (e)” is shown as achieving the lowest error rate and outperforming the Fisherface method (labeled “FLD”) by a significant margin and the other methods (e.g., PCA, LLD). The two implementations of the extended Isomap (one with k-nearest neighbor (extended k-Isomap, labeled “Ext Isomap (neighbor)”) and the other with ε radius (extended ε-Isomap, labeled “Ext Isomap (e)”) for determining neighboring data points) consistently perform better than their counterpart conventional Isomap methods (k-Isomap labeled “Isomap (neighbor)” and ε-Isomap labeled “Isomap (e)”, respectively) with lower error rates in pattern classification by a significant margin.

[0078]FIG. 7 is a graph illustrating the results of testing the method of representing images for pattern classification by extended Isomap according to the first embodiment of the present invention (using FLD with conventional Isomap) on the second set of test face images. The second set of test face images contained 165 images of 11 subjects that include variation of facial expression and lighting. For computational efficiency, each face image was down-sampled to 29×41 pixels. Similarly, each face image was represented by a centered vector of normalized intensity values.

[0079] The tests were performed using the leave-one-out strategy, and the number of principal components were varied to achieve the lowest error rates for Eigenface (PCA) and LLE methods. For the Fisherface method (FLD) and the extended Isomap method of the present invention, the samples were projected onto a subspace spanned by the c−1 largest eigenvectors (where c is the number of classes).

[0080] Referring to FIG. 7, both implementations of the extended Isomap method (one with k-nearest neighbor (extended k-Isomap, labeled “Ext Isomap (neighbor)”) and the other with ε radius (extended ε-Isomap, labeled “Ext Isomap (e)”) for determining neighboring data points) perform better than their counterpart conventional Isomap methods (Isomap (neighbor) and Isomap (e), respectively) with lower error rates in pattern classification. Furthermore, the extended ε-Isomap method (Ext Isomap (e)) performs almost as well as the Fisherface method (FLD, which is one of the best methods in the face recognition) while the conventional Isomap does not perform well on the second set of test face images.

[0081]FIG. 8A is a graph illustrating sample images in the second set of test face images projected by the conventional Isomap method, and FIG. 8B is a graph illustrating sample images in the second set of test face images projected by the extended Isomap method according to the first embodiment of the present invention. In FIG. 8A, the test samples of the second set of test face images were projected onto the first two eigenvectors extracted by the conventional Isomap method, and in FIG. 8B, the test samples of the second set of test face images were projected onto the first two eigenvectors extracted by the extended Isomap method of the present invention as described in FIG. 2. The projected samples of different classes are smeared in the conventional Isomap method as shown in FIG. 8A, whereas the samples projected by the extended Isomap method of the present invention are separated well as shown in FIG. 8B.

[0082]FIG. 9 is a graph illustrating the results of testing the method of representing images for pattern classification by extended Isomap according to the first embodiment of the present invention on the third set of test handwritten digit images. The third set of test handwritten digit images contained a training set of 60,000 examples and a test set of 10,000 examples. The were normalized while preserving their aspect ratio, and each one was centered in a 28×28 window of gray scales by computing the center of mass of the pixels and translating the image so as to position the center of mass at the center.

[0083] Due to computational and memory constraints, a training set of 1,500 handwritten digit images was randomly selected from the third set of test handwritten digit images and a non-overlapping test set of 250 images was randomly selected for experiments from the third set of test handwritten digit images. The same experiment was carried out five times and the test parameters were varied to achieve the lowest error rates in each run. Each image was represented by a raster scan vector of intensity values without applying any feature extraction algorithms.

[0084] Referring to FIG. 9, the averaged results of conventional k-Isomap (labeled “K-Isomap (neighbor)”), the extended k-Isomap (labeled “Ext K-Isomap (neighbor)”), conventional ε-Isomap (labeled “Isomap (e)”), and the extended ε-Isomap (labeled “Ext Isomap (e)”) methods are shown. As shown in FIG. 9, the extended Isomap methods consistently outperform their counterpart conventional Isomap methods with lower error rates in pattern recognition in the experiments with the third set of test handwritten digit images.

[0085] Although the present invention has been illustrated as a method and system, it should be noted that the method of the present invention can be embodied in a computer program product recorded on any type of computer readable medium. It should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, the disclosure of the present invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims. 

I claim:
 1. A method of representing a set of images for pattern classification, the method comprising: receiving data points corresponding to the set of images in an input space; generating a neighboring graph indicating whether the data points are neighbors; estimating geodesic distances between the data points based upon the neighboring graph; representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points; applying Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification.
 2. The method of claim 1, wherein generating a neighboring graph comprises: determining distances between the data points; determining whether the data points are neighbors based on the determined distances; responsive to determining that the data points are neighbors, selecting the determined distance for the neighboring graph; responsive to determining that the data points are not neighbors, selecting an infinite value for the neighboring graph.
 3. The method of claim 2, wherein determining whether the data points are neighbors comprises selecting a predetermined number of closest data points from each data point based on the determined distance as the neighbors.
 4. The method of claim 2, wherein determining whether the data points are neighbors comprises selecting data points within a predetermined radius from each data point based on the determined distance as the neighbors.
 5. The method of claim 1, wherein estimating the geodesic distance between the data points comprises approximating the geodesic distance between the data points with a distance covered by a sequence of short hops between neighboring data points on the neighboring graph using the Floyd-Warshall algorithm.
 6. The method of claim 1, wherein applying Fisher Linear Discriminant to the feature vectors comprises projecting the feature vectors to a lower dimensional space lower in dimension than the input space so as to substantially maximize a variance between clusters of feature vectors while substantially minimizing the variance within each cluster of the feature vectors.
 7. The method of claim 6, wherein the variance between the clusters of the feature vectors is represented by a between-class scatter matrix and the variance within each cluster of the feature vectors is represented by a within-class scatter matrix.
 8. The method of claim 7, wherein the feature vectors are projected to the lower dimensional space so as to substantially maximize a ratio of the between-class scatter matrix to the within-class scatter matrix.
 9. The method of claim 1, wherein the images are face images or digit images.
 10. A method of representing a set of images for pattern classification, the method comprising: receiving data points corresponding to the set of images in an input space; generating a neighboring graph indicating whether the data points are neighbors; estimating geodesic distances between the data points based upon the neighboring graph; representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points; applying Kernel Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification.
 11. The method of claim 10, wherein generating a neighboring graph comprises: determining distances between the data points; determining whether the data points are neighbors based on the determined distances; responsive to determining that the data points are neighbors, selecting the determined distance for the neighboring graph; responsive to determining that the data points are not neighbors, selecting an infinite value for the neighboring graph.
 12. The method of claim 11, wherein determining whether the data points are neighbors comprises selecting a predetermined number of closest data points from each data point based on the determined distance as the neighbors.
 13. The method of claim 11, wherein determining whether the data points are neighbors comprises selecting data points within a predetermined radius from each data point based on the determined distance as the neighbors.
 14. The method of claim 10, wherein estimating the geodesic distance between the data points comprises approximating the geodesic distance between the data points with a distance covered by a sequence of short hops between neighboring data points on the neighboring graph using the Floyd-Warshall algorithm.
 15. The method of claim 10, wherein applying Kernel Fisher Linear Discriminant to the feature vectors comprises: projecting the feature vectors to a high dimensional feature space using a projection function; generating Kernel Fisherfaces for the feature vectors projected to the high dimensional feature space; projecting the feature vectors to a lower dimensional space lower in dimension than the input space and the high dimensional feature space based on the Kernel Fisherfaces so as to substantially maximize a variance between clusters of feature vectors while substantially minimizing the variance within each cluster of the feature vectors.
 16. The method of claim 15, wherein the variance between the clusters of the feature vectors is represented by a between-class scatter matrix and the variance within each cluster of the feature vectors is represented by a within-class scatter matrix.
 17. The method of claim 16, wherein the feature vectors are projected to the lower dimensional space so as to substantially maximize a ratio of the between-class scatter matrix to the within-class scatter matrix.
 18. The method of claim 17, wherein a fraction of an identity matrix is added to the within-class scatter matrix.
 19. The method of claim 15, wherein the projection function φ(x) satisfies the following relation: k(x, y)=Φ(x)·Φ(y) where k(x,y ) is a kernel function, Φ(x)·Φ(y) is the dot product of the projection functions Φ(x) and Φ(y), and x and y are real number variables.
 20. The method of claim 10, wherein the images are face images or digit images.
 21. A system for representing a set of images for pattern classification, the system comprising: neighboring graph generation module for receiving data points corresponding to the set of images in an input space and for generating a neighboring graph indicating whether the data points are neighbors; a geodesic distance estimation module for estimating geodesic distances between the data points based upon the neighboring graph; a Fisher Linear Discriminant module for representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points and for applying Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification.
 22. The system of claim 21, wherein the neighboring graph generation module generates the neighboring graph by: determining distances between the data points; determining whether the data points are neighbors based on the determined distances; responsive to determining that the data points are neighbors, selecting the determined distance for the neighboring graph; responsive to determining that the data points are not neighbors, selecting an infinite value for the neighboring graph.
 23. The system of claim 22, wherein determining whether the data points are neighbors comprises selecting a predetermined number of closest data points from each data point based on the determined distance as the neighbors.
 24. The system of claim 22, wherein determining whether the data points are neighbors comprises selecting data points within a predetermined radius from each data point based on the determined distance as the neighbors.
 25. The system of claim 21, wherein the geodesic distance estimation module estimates the geodesic distance between the data points by approximating the geodesic distance between the data points with a distance covered by a sequence of short hops between neighboring data points on the neighboring graph using the Floyd-Warshall algorithm.
 26. The system of claim 21, wherein the Fisher Linear Discriminant module applies Fisher Linear Discriminant to the feature vectors by projecting the feature vectors to a lower dimensional space lower in dimension than the input space so as to substantially maximize a variance between clusters of feature vectors while substantially minimizing the variance within each cluster of the feature vectors.
 27. The system of claim 26, wherein the variance between the clusters of the feature vectors is represented by a between-class scatter matrix and the variance within each cluster of the feature vectors is represented by a within-class scatter matrix.
 28. The system of claim 27, wherein the feature vectors are projected to the lower dimensional space so as to substantially maximize a ratio of the between-class scatter matrix to the within-class scatter matrix.
 29. The system of claim 21, wherein the images are face images or digit images.
 30. A system for representing a set of images for pattern classification, the system comprising: neighboring graph generation module for receiving data points corresponding to the set of images in an input space and for generating a neighboring graph indicating whether the data points are neighbors; a geodesic distance estimation module for estimating geodesic distances between the data points based upon the neighboring graph; a Kernel Fisher Linear Discriminant module for representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points and for applying Kernel Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification.
 31. The system of claim 30, wherein the neighboring graph generation module generates the neighboring graph by: determining distances between the data points; determining whether the data points are neighbors based on the determined distances; responsive to determining that the data points are neighbors, selecting the determined distance for the neighboring graph, responsive to determining that the data points are not neighbors, selecting an infinite value for the neighboring graph.
 32. The system of claim 31, wherein determining whether the data points are neighbors comprises selecting a predetermined number of closest data points from each data point based on the determined distance as the neighbors.
 33. The system of claim 31, wherein determining whether the data points are neighbors comprises selecting data points within a predetermined radius from each data point based on the determined distance as the neighbors.
 34. The system of claim 30, wherein the geodesic distance estimation module estimates the geodesic distance between the data points by approximating the geodesic distance between the data points with a distance covered by a sequence of short hops between neighboring data points on the neighboring graph using the Floyd-Warshall algorithm.
 35. The system of claim 30, wherein the Kernel Fisher Linear Discriminant module applies Kernel Fisher Linear Discriminant to the feature vectors by: projecting the feature vectors to a high dimensional feature space using a projection function; generating Kernel Fisherfaces or the feature vectors projected to the high dimensional feature space; projecting the feature vectors to a lower dimensional space lower in dimension than the input space and the high dimensional feature space based on the Kemel Fisherfaces so as to substantially maximize a variance between clusters of feature vectors while substantially minimizing the variance within each cluster of the feature vectors.
 36. The system of claim 35, wherein the variance between the clusters of the feature vectors is represented by a between-class scatter matrix and the variance within each cluster of the feature vectors is represented by a within-class scatter matrix.
 37. The system of claim 36, wherein the feature vectors are projected to the lower dimensional space so as to substantially maximize a ratio of the between-class scatter matrix to the within-class scatter matrix.
 38. The system of claim 30, wherein the images are face images or digit images.
 39. The system of claim 35, wherein the projection function Φ(x) satisfies the following relation: k(x, y)=Φ(x)·Φ(y) where k(x,y ) is a kernel function, Φ(x)·Φ(y) is the dot product of the projection functions Φ(x) and Φ(y), and x and y are real number variables.
 40. A computer program product for representing a set of images for pattern classification, the computer program product stored on a computer readable medium and adapted to perform a method comprising: receiving data points corresponding to the set of images in an input space; generating a neighboring graph indicating whether the data points are neighbors; estimating geodesic distances between the data points based upon the neighboring graph; representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points; applying Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification.
 41. A computer program product for representing a set of images for pattern classification, the computer program product stored on a computer readable medium and adapted to perform a method comprising: receiving data points corresponding to the set of images in an input space; generating a neighboring graph indicating whether the data points are neighbors; estimating geodesic distances between the data points based upon the neighboring graph; representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points; applying Kernel Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification.
 42. A system for representing a set of images for pattern classification, the system comprising: means for receiving data points corresponding to the set of images in an input space and for generating a neighboring graph indicating whether the data points are neighbors; means for estimating geodesic distances between the data points based upon the neighboring graph; means for representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points and for applying Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification.
 43. A system for representing a set of images for pattern classification, the system comprising: means for receiving data points corresponding to the set of images in an input space and for generating a neighboring graph indicating whether the data points are neighbors; means for estimating geodesic distances between the data points based upon the neighboring graph; means for representing each of the data points by an associated feature vector corresponding to the geodesic distances to other data points and for applying Kernel Fisher Linear Discriminant to the feature vectors associated with the data points to obtain an optimal direction for projecting the feature vectors for pattern classification. 